Towards an Algebraic Specification of the Java Virtual Machine

نویسنده

  • Karen Stephenson
چکیده

We develop an algebraic speci cation of the architecture of an abstract and simpli ed version of the Java Virtual Machine (JVM). This concentration on the implementation-independent features of the machine allows us to build a clean and easily comprehensible model in which its structure is emphasised. We then axiomatise the semantics of programs operating on this architecture. We also consider how we can concretise this abstract model which provides us with a rm foundation for exploring the entire JVM and thus of analysing the correctness of Java implementations.

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Algebraic Compilation of Safety-Critical Java Bytecode

Safety-Critical Java (SCJ) is a version of Java that facilitates the development of certifiable programs, and requires a specialised virtual machine (SCJVM). In spite of the nature of the applications for which SCJ is designed, none of the SCJVMs are verified. In this paper, we contribute a formal specification of a bytecode interpreter for SCJ and an algebraic compilation strategy from Java by...

متن کامل

A Type System for Object Initialization In the JavaTM Bytecode Language

In the standard Java implementation, a Java language program is compiled to Java bytecode and this bytecode is then interpreted by the Java Virtual Machine. Since bytecode may be written by hand, or corrupted during network transmission, the Java Virtual Machine contains a bytecode verifier that performs a number of consistency checks before code is interpreted. However, there is no formal spec...

متن کامل

Pizza into Java:

Pizza is a strict superset of Java that incorporates three ideas from the academic community: parametric polymor-phism, higher-order functions, and algebraic data types. Pizza is deened by translation into Java and compiles into the Java Virtual Machine, requirements which strongly constrain the design space. Nonetheless, Pizza ts smoothly to Java, with only a few rough edges.

متن کامل

Proposal for Extension of JavaTM Floating Point

Prompted by feedback from several partners in the industry, Sun is proposing a change to the specification of floating-point in the Java programming language. The current Java programming language and virtual machine specifications require that all single and double precision floating-point calculations must round their results to the IEEE 754 single and double precision formats, respectively. ...

متن کامل

CoqJVM: An Executable Specification of the Java Virtual Machine Using Dependent Types

We describe an executable specification of the Java Virtual Machine (JVM) within the Coq proof assistant. The principal features of the development are that it is executable, meaning that it can be tested against a real JVM to gain confidence in the correctness of the specification; and that it has been written with heavy use of dependent types, this is both to structure the model in a useful w...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 1998